package com.hxexp.weixin.hpe.api.userorderlist.model;

import java.io.Serializable;
import java.util.List;

/**
 * 订单信息
 *
 * @author li.jiang
 *
 */
public final class OrderInfoBean implements Serializable {

    private static final long serialVersionUID = 8617849926419868865L;
    /**
     * 订单号
     */
    private String orderId;
    /**
     * 出发车站编码
     */
    private String startStationId;
    /**
     * 出发车站名称
     */
    private String startStationName;
    /**
     * 到达车站编码
     */
    private String arriveStationId;
    /**
     * 到达车站名称
     */
    private String arriveStationName;
    /**
     * 发车日期 格式：yyyy-MM-dd
     */
    private String leaveDate;
    /**
     * 发车时间 格式：hh:mm
     */
    private String leaveTime;
    /**
     * 车次名称
     */
    private String regBusNo;
    /**
     * 检票口编号
     */
    private String passGate;
    /**
     * 全票价
     */
    private String price;
    /**
     * 半票价
     */
    private String halfPrice;
    /**
     * 不包含免票的票数
     */
    private Integer ticketCount;
    /**
     * 车票列表
     */
    private List<TicketInfoBean> ticketList;
    /**
     * 运输公司名称
     */
    private String motName;
    /**
     * 车牌号
     */
    private String vin;
    /**
     * 车型名称
     */
    private String busTypeName;
    /**
     * 线路类型名称
     */
    private String lineTypeName;
    /**
     * 班次类型
     */
    private String schType;
    /**
     * 是否加班
     */
    private String extraFlag;
    /**
     * 订单总金额
     */
    private String totalPrice;
    /**
     * 下单日期时间
     */
    private String placeOrderDatetime;
    /**
     * 支付完成时间
     */
    private String timeEnd;
    /**
     * 订单状态编码
     */
    private String statusCode;
    /**
     * 订单状态描述
     */
    private String description;
    /**
     * 订单编号
     */
    private String orderpnr;

    /**
     * @return the orderId
     */
    public String getOrderId() {
        return orderId;
    }

    /**
     * @param orderId
     *            the orderId to set
     */
    public void setOrderId(String orderId) {
        this.orderId = orderId;
    }

    /**
     * @return the startStationId
     */
    public String getStartStationId() {
        return startStationId;
    }

    /**
     * @param startStationId
     *            the startStationId to set
     */
    public void setStartStationId(String startStationId) {
        this.startStationId = startStationId;
    }

    /**
     * @return the startStationName
     */
    public String getStartStationName() {
        return startStationName;
    }

    /**
     * @param startStationName
     *            the startStationName to set
     */
    public void setStartStationName(String startStationName) {
        this.startStationName = startStationName;
    }

    /**
     * @return the arriveStationId
     */
    public String getArriveStationId() {
        return arriveStationId;
    }

    /**
     * @param arriveStationId
     *            the arriveStationId to set
     */
    public void setArriveStationId(String arriveStationId) {
        this.arriveStationId = arriveStationId;
    }

    /**
     * @return the arriveStationName
     */
    public String getArriveStationName() {
        return arriveStationName;
    }

    /**
     * @param arriveStationName
     *            the arriveStationName to set
     */
    public void setArriveStationName(String arriveStationName) {
        this.arriveStationName = arriveStationName;
    }

    /**
     * @return the leaveDate
     */
    public String getLeaveDate() {
        return leaveDate;
    }

    /**
     * @param leaveDate
     *            the leaveDate to set
     */
    public void setLeaveDate(String leaveDate) {
        this.leaveDate = leaveDate;
    }

    /**
     * @return the leaveTime
     */
    public String getLeaveTime() {
        return leaveTime;
    }

    /**
     * @param leaveTime
     *            the leaveTime to set
     */
    public void setLeaveTime(String leaveTime) {
        this.leaveTime = leaveTime;
    }

    /**
     * @return the regBusNo
     */
    public String getRegBusNo() {
        return regBusNo;
    }

    /**
     * @param regBusNo
     *            the regBusNo to set
     */
    public void setRegBusNo(String regBusNo) {
        this.regBusNo = regBusNo;
    }

    /**
     * @return the passGate
     */
    public String getPassGate() {
        return passGate;
    }

    /**
     * @param passGate
     *            the passGate to set
     */
    public void setPassGate(String passGate) {
        this.passGate = passGate;
    }

    /**
     * @return the price
     */
    public String getPrice() {
        return price;
    }

    /**
     * @param price
     *            the price to set
     */
    public void setPrice(String price) {
        this.price = price;
    }

    /**
     * @return the halfPrice
     */
    public String getHalfPrice() {
        return halfPrice;
    }

    /**
     * @param halfPrice
     *            the halfPrice to set
     */
    public void setHalfPrice(String halfPrice) {
        this.halfPrice = halfPrice;
    }

    /**
     * @return the ticketCount
     */
    public Integer getTicketCount() {
        return ticketCount;
    }

    /**
     * @param ticketCount
     *            the ticketCount to set
     */
    public void setTicketCount(Integer ticketCount) {
        this.ticketCount = ticketCount;
    }

    /**
     * @return the ticketList
     */
    public List<TicketInfoBean> getTicketList() {
        return ticketList;
    }

    /**
     * @param ticketList
     *            the ticketList to set
     */
    public void setTicketList(List<TicketInfoBean> ticketList) {
        this.ticketList = ticketList;
    }

    /**
     * @return the motName
     */
    public String getMotName() {
        return motName;
    }

    /**
     * @param motName
     *            the motName to set
     */
    public void setMotName(String motName) {
        this.motName = motName;
    }

    /**
     * @return the vin
     */
    public String getVin() {
        return vin;
    }

    /**
     * @param vin
     *            the vin to set
     */
    public void setVin(String vin) {
        this.vin = vin;
    }

    /**
     * @return the busTypeName
     */
    public String getBusTypeName() {
        return busTypeName;
    }

    /**
     * @param busTypeName
     *            the busTypeName to set
     */
    public void setBusTypeName(String busTypeName) {
        this.busTypeName = busTypeName;
    }

    /**
     * @return the lineTypeName
     */
    public String getLineTypeName() {
        return lineTypeName;
    }

    /**
     * @param lineTypeName
     *            the lineTypeName to set
     */
    public void setLineTypeName(String lineTypeName) {
        this.lineTypeName = lineTypeName;
    }

    /**
     * @return the schType
     */
    public String getSchType() {
        return schType;
    }

    /**
     * @param schType
     *            the schType to set
     */
    public void setSchType(String schType) {
        this.schType = schType;
    }

    /**
     * @return the extraFlag
     */
    public String getExtraFlag() {
        return extraFlag;
    }

    /**
     * @param extraFlag
     *            the extraFlag to set
     */
    public void setExtraFlag(String extraFlag) {
        this.extraFlag = extraFlag;
    }

    /**
     * @return the totalPrice
     */
    public String getTotalPrice() {
        return totalPrice;
    }

    /**
     * @param totalPrice
     *            the totalPrice to set
     */
    public void setTotalPrice(String totalPrice) {
        this.totalPrice = totalPrice;
    }

    /**
     * @return the placeOrderDatetime
     */
    public String getPlaceOrderDatetime() {
        return placeOrderDatetime;
    }

    /**
     * @param placeOrderDatetime
     *            the placeOrderDatetime to set
     */
    public void setPlaceOrderDatetime(String placeOrderDatetime) {
        this.placeOrderDatetime = placeOrderDatetime;
    }

    /**
     * @return the timeEnd
     */
    public String getTimeEnd() {
        return timeEnd;
    }

    /**
     * @param timeEnd
     *            the timeEnd to set
     */
    public void setTimeEnd(String timeEnd) {
        this.timeEnd = timeEnd;
    }

    /**
     * @return the statusCode
     */
    public String getStatusCode() {
        return statusCode;
    }

    /**
     * @param statusCode
     *            the statusCode to set
     */
    public void setStatusCode(String statusCode) {
        this.statusCode = statusCode;
    }

    /**
     * @return the description
     */
    public String getDescription() {
        return description;
    }

    /**
     * @param description
     *            the description to set
     */
    public void setDescription(String description) {
        this.description = description;
    }

    public String getOrderpnr() {
        return orderpnr;
    }

    public void setOrderpnr(String orderpnr) {
        this.orderpnr = orderpnr;
    }



    /*
     * (non-Javadoc)
     *
     * @see java.lang.Object#toString()
     */
    @Override
    public String toString() {
        return String
                .format("OrderInfoBean [orderId=%s, startStationId=%s, startStationName=%s, arriveStationId=%s, arriveStationName=%s, leaveDate=%s, leaveTime=%s, regBusNo=%s, passGate=%s, price=%s, halfPrice=%s, ticketCount=%s, ticketList=%s, motName=%s, vin=%s, busTypeName=%s, lineTypeName=%s, schType=%s, extraFlag=%s, totalPrice=%s, placeOrderDatetime=%s, timeEnd=%s, statusCode=%s, description=%s,orderpnr=%s]",
                        orderId, startStationId, startStationName, arriveStationId, arriveStationName, leaveDate,
                        leaveTime, regBusNo, passGate, price, halfPrice, ticketCount, ticketList, motName, vin,
                        busTypeName, lineTypeName, schType, extraFlag, totalPrice, placeOrderDatetime, timeEnd,
                        statusCode, description, orderpnr);
    }

}
